cpupower: Fix checks for CPU existence
authorBen Hutchings <ben@decadent.org.uk>
Thu, 3 Nov 2016 21:25:26 +0000 (15:25 -0600)
committerBen Hutchings <ben@decadent.org.uk>
Mon, 17 Jul 2017 02:01:21 +0000 (03:01 +0100)
commitac5e8f4c6771c9976a550d6af4e9992feb725516
treeebfa5cfa6bb011bdd1daa17a4bd874b8cfe97421
parentccffb683cd7194b5ffa010f5db2bdc2610ee163a
cpupower: Fix checks for CPU existence

Calls to cpufreq_cpu_exists(cpu) were converted to
cpupower_is_cpu_online(cpu) when libcpupower was introduced and the
former function was deleted.  However, cpupower_is_cpu_online()
returns 1 on success whereas cpufreq_cpu_exists() returned 0 on
success.  It also does not distinguish physically absent and offline
CPUs, and does not set errno.

cpufreq-set has already been fixed (commit c25badc9ceb6).

In cpufreq-bench, which prints an error message for offline CPUs,
properly distinguish and report the zero and negative cases.

Fixes: ac5a181d065d ("cpupower: Add cpuidle parts into library")
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name cpupower-fix-checks-for-cpu-existence.patch
tools/power/cpupower/bench/system.c